As is well known, the topology of a given communication network may be generally represented as comprising nodes interconnected by edges. The nodes may represent network elements such as, for example, routers, switches and gateways, while the edges represent connections between such elements. Information specifying a network topology may be stored in the form of a designated data structure, such as a list of nodes and a corresponding adjacency matrix specifying connections between the nodes.
Network topology information is useful in a wide variety of applications, including applications that involve network analysis associated with implementation, maintenance, management, monitoring or troubleshooting of communication networks. As a more particular example, it is often desirable to generate a visualization of the topology of a given communication network. Such visualizations may be generated for presentation on a computer monitor or other type of display.
Large network topologies can be very difficult to visualize and interpret. For example, the physical constraints of the display may limit the number of nodes and edges that can be effectively presented. In addition, it may be difficult to recognize important features of the network topology when the topology also includes many unimportant nodes and edges. The speed at which network engineers can interact with the topology visualization is directly related to the number of nodes and edges of the topology.
Certain conventional topology visualization techniques attempt to facilitate the identification of features of interest by, for example, coloring particular edges in the visualization as presented on a color display. For example, edges colored red may indicate potential problem locations, while edges colored green indicate normal operation. This coloring process is typically based on lengthy calculations, and so can be difficult to implement with large network topologies. Other conventional approaches allow the topology visualization to be modified to present only a subset of the topology based on, for example, a designated number of hops from a particular node, or traffic carried between selected zones.
The conventional approaches noted above fail to provide an adequate mechanism for automatically simplifying the visualization so as to present only particular portions of interest. For example, a network engineer may need to understand what happens in a wide area network (WAN) portion of a large enterprise network topology. Unfortunately, the conventional techniques are unable to simplify a network topology visualization such that it automatically presents only those nodes and edges likely to represent WAN components of the network.
Accordingly, a need exists for an improved approach to network topology processing, which allows for efficient and automatic simplification of network topology visualization to present only WAN components or other particular portions of interest, as well as improved performance in other applications.